home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 June / EnigmA AMIGA RUN 08 (1996)(G.R. Edizioni)(IT)[!][issue 1996-06][EARSAN CD VII].iso / earcd / c-lang / vbcc.lha / vbcc / vars.c < prev    next >
C/C++ Source or Header  |  1996-05-15  |  2KB  |  76 lines

  1. /*  $VER: vbcc (vars.c) V0.3    */
  2.  
  3. #include "vbc.h"
  4.  
  5. char *typname[]={"strange","char","short","int","long","float","double","void",
  6.                  "pointer","array","struct","union","enum","function"};
  7. char *storage_class_name[]={"strange","auto","register","static","extern","typedef"};
  8.  
  9. char *s,*ident;
  10. char string[MAXINPUT],number[MAXI],buff[MAXI];
  11. struct struct_declaration *first_sd[MAXN],*last_sd[MAXN],*merk_sdf,*merk_sdl;
  12. struct struct_identifier *first_si[MAXN],*last_si[MAXN],*merk_sif,*merk_sil;
  13. struct identifier_list *first_ilist[MAXN],*last_ilist[MAXN],*merk_ilistf,*merk_ilistl;
  14. struct llist *first_llist,*last_llist;
  15. int nesting;
  16. char *empty="";
  17. struct Var *first_var[MAXN],*last_var[MAXN],*merk_varf,*merk_varl;
  18.  
  19. zchar vchar; zuchar vuchar;
  20. zshort vshort; zushort vushort;
  21. zint vint; zuint vuint;
  22. zlong vlong; zulong vulong;
  23. zfloat vfloat; zdouble vdouble;
  24. zpointer vpointer;
  25.  
  26. int DEBUG,MDEBUG=0;
  27.  
  28. int label=0;
  29.  
  30. FILE *out,*ic1,*ic2,*ppout;
  31.  
  32. int nocode;
  33. int registerpri=200,currentpri=0,looppri=10;
  34. int return_label,return_value,break_label,switch_typ,switch_count=0,switch_act=0;
  35. struct Typ *return_typ;
  36. struct Var *return_var;
  37. int local_offset[MAXN];
  38.  
  39. int c_flags[MAXCF]={
  40.     VALFLAG,STRINGFLAG,0,0,
  41.     VALFLAG,0,0,0,
  42.     VALFLAG,FUNCFLAG,FUNCFLAG,VALFLAG,
  43.     VALFLAG,0,0,0,
  44.     0,0,0
  45. };
  46. char *c_flags_name[MAXCF]={
  47.     "O","o","ic1","ic2",
  48.     "debug","noasm","quiet","ansi",
  49.     "maxerrors","dontwarn","warn","maxoptpasses",
  50.     "inline-size","nested-comments","cpp-comments","macro-redefinition",
  51.     "no-trigraphs","no-preprocessor","E"
  52. };
  53. union ppi c_flags_val[MAXCF];
  54.  
  55. char *inname;
  56.  
  57. int max_offset,function_calls;
  58.  
  59. struct const_list *first_clist=0,*last_clist=0;
  60.  
  61. int afterlabel;
  62.  
  63. int goto_used;
  64.  
  65. struct err_out err_out[]={
  66. #include "errors.h"
  67. "",0
  68. };
  69. int err_num=sizeof(err_out)/sizeof(struct err_out)-1;
  70.  
  71. int ic_count;
  72.  
  73. int lastlabel;
  74.  
  75. char *copyright="vbcc V0.3 (c) in 1995-96 by Volker Barthelmann\n";
  76.